// 引入初始化样式 入口文件1只做初始化事情
import '@/styles/common.scss'
import { createApp } from 'vue'
import { createPinia } from 'pinia'
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'

// import { useIntersectionObserver } from '@vueuse/core'
// 引入懒加载插件
import { lazyPlugin } from '@/directives'
import App from './App.vue'
import router from './router'
// 引入全局组件插件
import { componentPlugin } from '@/components'
// 测试接口函数
// import { getCategory } from './apis/testAPI'
// getCategory().then(res => {
//   console.log(res)
// })
const app = createApp(App)
const pinia = createPinia()
// 注册持久化插件
pinia.use(piniaPluginPersistedstate)
// 全局注册
app.use(pinia)
app.use(componentPlugin)
// app.use(createPinia())
app.use(router)
app.use(lazyPlugin)
app.mount('#app')

// 定义全局指令

// app.directive('img-lazy', {
//   mounted(el,bining) {
//     // el:指令绑定的元素
//     // bining:bining.value 指令等于号后面绑定的表达式的值
//     console.log(el,bining.value)
//     useIntersectionObserver(
//       el,
//       // isIntersecting 判断监听的数据是否进入
//       ([{ isIntersecting }]) => {
//         console.log(isIntersecting)
//         if(isIntersecting) {
//           // 进入视图区
//           el.src = bining.value
//         }
//       },
//     )
//   }
// })
